package keer.httpinterface.annotation;

import java.lang.annotation.*;

/**
 * 用于指定注解中不同属性之间的别名
 * @since 2024-10
 * @author keer
 */
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
@Documented
public @interface Alias {
    /**
     * 指定别名作用到注解类型上的注解的类型。此配置值为非{@link Annotation}时生效
     * @return
     */
    Class<? extends Annotation> annotation() default Annotation.class;

    /**
     * 别名作用的注解的属性名称，如果{@link #annotation()}中指定了非{@link Annotation}类的
     * 值，则作用于{@link #annotation()}指定的注解类型的对应属性
     * @return
     */
    String property();
}
